package gxwl.common.combine;

import io.swagger.v3.oas.annotations.tags.Tag;
import org.springframework.core.annotation.AliasFor;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import java.lang.annotation.*;

/**
 * 是 @{@link RequestMapping} 和 @{@link RestController} 的整合注解
 * @author jiangwh
 */
@Target({ElementType.TYPE, ElementType.METHOD})
@Retention(RetentionPolicy.RUNTIME)
@Documented
@Tag(name = "")
@RestController
@RequestMapping
public @interface ApiController {

    /**
     * Swagger UI 接口名称<br>
     */
    @AliasFor(annotation = Tag.class)
    String name();

    /**
     * 请求路径
     */
    @AliasFor(annotation = RequestMapping.class)
    String[] value() default {};

}
